package city.spring.modules.material.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 实体类：领用申请表
 *
 * @author 谢金婷
 * @date 2020-06-19 11:28:23
 */
@Data
@TableName("materialreceipt")
public class MaterialreceiptEntity implements Serializable {

    /**
     * id
     */
    @TableId(type = IdType.ASSIGN_ID)
    private String id;

    /**
     * 领用人
     */
    private String receipter;
    /**
     * 关联显示审核人姓名，标记该字段不是数据库字段
     */
    @TableField(exist = false)
    private String receiptername;


    /**
     * 所属部门
     */
    private String department;
    /**
     * 关联显示部门名称，标记该字段不是数据库字段
     */
    @TableField(exist = false)
    private String title;

    /**
     * 申请日期
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
    private Date applicationdate;

    /**
     * 用途
     */
    private String application;

    /**
     * 部门领导审核人
     */
    private String dReviewer;
    /**
     * 关联显示审核人名称，标记该字段不是数据库字段
     */
    @TableField(exist = false)
    private String dreviewerName;

    /**
     * 部门领导审核意见
     */
    private String dSuggestion;

    /**
     * 部门领导审核日期
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
    private Date dReviewdate;

    /**
     * 部门领导审核状态：1.待审核，2.通过，3.不通过
     */
    private String dApprovalStatus;

    /**
     * 院办审核状态：1.待审核，2.通过，3.不通过
     */
    private String oApprovalStatus;

    /**
     * 院办审核人
     */
    private String oReviewer;
    /**
     * 关联显示审核人名称，标记该字段不是数据库字段
     */
    @TableField(exist = false)
    private String oreviewerName;

    /**
     * 院办审核意见
     */
    private String oSuggestion;

    /**
     * 院办审核日期
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd")
    private Date oReviewdate;

    /**
     * 出库状态：1.已出库，2.未出库
     */
    private String deliveryStatus;

    /**
     * 领用状态：已领用，未领用
     */
    private String receiptStatus;

    /**
     * 创建时间
     */
    @TableField(insertStrategy = FieldStrategy.NEVER, updateStrategy = FieldStrategy.NEVER)
    private Date gmtCreate;

    /**
     * 修改时间
     */
    @TableField(insertStrategy = FieldStrategy.NEVER, updateStrategy = FieldStrategy.NEVER)
    private Date gmtModified;

}